package 二叉树;

//101 对称二叉树
public class Solution2 {
    public boolean isSymmetric(TreeNode root) {
        if(root==null){
            return true;
        }
        return dfs(root.left,root.right);
    }
    boolean dfs(TreeNode a,TreeNode b){
        if(a==null&&b==null) return true;//按照我这种写法的话，这句话不能放到下一个if之后，要先判断是否都为空，
                                         //不然下面的.val可能会出现空指针
        if((a==null&&b!=null)||(a!=null&&b==null)||(a.val!=b.val)){
            return false;
        }
        return dfs(a.left,b.right)&&dfs(a.right,b.left);
    }
}
